DEFINITION MODULE RealInOut;
(*              File :  RealInOut.def                                      *)
(*              Date:   Octeber , 1986                                     *)
(*              By:  Morris                                                *)
(*                                                                         *)
(*   SCCSID  = "%R%.%L%    %G%";                                           *)
(*
*    Copyright (c) 1985,1986,1987,1988,1989 by
*    ana-systems, Foster City, California.
*    All Rights Reserved.
*
*    This software is furnished under a license and may be used and copied
*    only  in accordance with  the  terms  of  such  license and  with the
*    inclusion of the above copyright notice.  This software or  any other
*    copies thereof may not be provided or otherwise made available to any
*    other  person.   No title to and ownership of the  software is  herby
*    transferred.
*
*    The information in this software is  subject to change without notice
*    and  should  not be construed as a commitment by ana-systems.   No
*    warranty is implied or expressed.
*)
(*                                                                         *)
(*      History of Modifcation                                             *)
(*      Date            Who                     Reasone                    *)

        (*      as defined by Wirth,1983, pp104-5

                entered by Philip E. Rosine
                25 Nov 83       *)
   
   EXPORT QUALIFIED ReadReal, WriteReal, WriteRealOct, Done;

   VAR Done: BOOLEAN;

   PROCEDURE ReadReal(VAR x: REAL);
        (* Read REAL number  x according to syntax:
          ["+"|"-"]digit{digit}["."digit{digit}]["E"["+"|"-"]digit[digit]]
         Done := "a number was read".
         At most 7 digits are significant, leading zeroes not
         counting.  Maximum exponent is 38.  Input terminates
         with a blank or any control character.  DEL is used for
         backspacing.   *)
   
   PROCEDURE WriteReal(x: REAL; n: CARDINAL);
        (* Write x using n characters.  If fewer than n
        characters are needed, leading blanks are inserted.  *)
   
   PROCEDURE WriteRealOct(x: REAL);
        (* Write x in octal form -- two octal words are written
        showing the memory representation of the real x --
        fieldwidth is 13 *)

END RealInOut.
